/// @tags:
#include <cstdio>
#include <cstring>
#include <iostream>

using namespace std;

namespace BlueQuantum {

int const N = 1e6 + 5;

int a[N], b[N];
char s[N];

inline int main() {
#ifdef DEBUG
  while (true) {
#endif
    cin >> (s + 1);
#ifdef DEBUG
    if (cin.eof()) break;
#endif
    int n = strlen(s + 1);
    for (int i = 1; i <= n; ++i) { a[i] = s[i] - '0'; }
    while (true) {
      memcpy(b, a, sizeof(a));
      bool flag = false;
      for (int i = 1; i <= n; ++i) {
        if (a[i] >= 2) {
          b[i - 1]++, b[i + 1]++, b[i] -= 2;
          flag = true;
        }
      }
      if (!flag) break;
      memcpy(a, b, sizeof(a));
    }
    for (int i = 1; i <= n; ++i) cout << a[i];
#ifdef DEBUG
    cout << '\n';
  }
#endif
  return 0;
}

}  // namespace BlueQuantum

int main() {
#ifndef ONLINE_JUDGE
#ifdef LOCAL
  freopen("/tmp/CodeTmp/testdata.in", "r", stdin);
  freopen("/tmp/CodeTmp/testdata.out", "w", stdout);
#else
  freopen("simulate.in", "r", stdin);
  freopen("simulate.out", "w", stdout);
#endif
#endif

  ios::sync_with_stdio(false), cin.tie(NULL), cout.tie(NULL);
  return BlueQuantum::main();
}
